#ifndef __MARS_GP_COMMANDQUEUE_H__
#define __MARS_GP_COMMANDQUEUE_H__

#include "MarsObject.h"
#include "MarsGPContext.h"

using namespace Core;

namespace GP
{

class CommandQueue : public Object
{
public:
									CommandQueue( const ContextRef& context );
	virtual							~CommandQueue();

	virtual bool					Create() = 0;

protected:
	ContextRef						m_context;
	bool							m_bInit;
};

inline CommandQueue::CommandQueue( const ContextRef& context )
	: m_context( context )
	, m_bInit( false )
{

}

inline CommandQueue::~CommandQueue()
{

}

} // end of namespace GP

#endif // end of #ifndef __MARS_GP_COMMANDQUEUE_H__